/** 
 * any类型不推荐使用,会让TypeScript变为'AnySript'(失去TS类型保护的优势)
 * 因为当值的类型为any时,可以对该值进行任意操作,且不会有代码提示
 * 除非临时使用any来避免书写很长很复杂的类型
 * 
 * 其它隐式具有any的情况:
 *      1.声明变量不提供类型也不提供默认值
 *      2.函数参数不加类型
 *      因为不推荐any,所以这两种情况都应该提供类型
*/



let obj: any = {x:0}
//不会错误提示
//访问不存在的属性或值
obj.bar = 100
//当做函数调用
obj()
//赋值给其他类型的变量
const n:number = obj


// 1.声明变量不提供类型也不提供默认值
let a  //any
a = 1
a = 'xx'
a() 


//2.函数参数不加类型

function add (n1, n2) {

}
add(11,'xxx')
